This repository was archived by the owner on Jul 2, 2026. It is now read-only.
Repository navigation
Conversation
anth-volk
force-pushed
the
codex/epsilon-insensitive-calibration
branch
from
May 20, 2026 14:43
508b8d3 to
3fe5102
Compare
Contributor
|
Closing as part of archiving this repository — Populace (PolicyEngine/populace) is its replacement and the certified US dataset since June 2026; see PolicyEngine/microcosm#204. This PR predates the migration and will not be merged. This topic continues in Populace's calibration gate suite and PolicyEngine/microcosm#212's closing analysis. Published artifacts remain available but frozen. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #1053
Merge status
Do not merge this PR yet. It depends on the L0 epsilon-insensitive loss feature branch being merged and released, and we still need to decide whether this target-policy/tolerance pathway is the right long-term calibration design.
Summary
target_policy.yaml+ JSONL/summary artifacts) with explicitfail,warn, anddiagnostic_onlyenforcement levels.relative_epsilonloss, while keeping grouped target loss disabled.person_countrows from age-bin person-count targets when no explicit total row exists.l0extra to the temporary L0 feature branch until the L0 support is released.Validation
make lint/opt/miniconda3/bin/python -m pytest tests/unit/calibration/test_target_policy.py tests/unit/calibration/test_unified_calibration.py::TestDerivedPopulationAnchors tests/unit/calibration/test_unified_calibration.py::TestFitTargetGroups tests/unit/test_remote_calibration_runner.py::test_collect_outputs_returns_pipeline_artifact_bytes tests/unit/test_pipeline.py::test_calibration_package_parameters_track_matrix_mode tests/unit/test_pipeline.py::test_calibration_package_parameters_ignore_unused_matrix_options tests/unit/test_calibration_package_stage_contract.py -q(39 passed)PYTHONPATH=/private/tmp/policyengine-l0-epsilon /opt/miniconda3/bin/python scripts/run_epsilon_calibration_demo.py --epochs 300 --output /private/tmp/epsilon_calibration_demo_summary.json/opt/miniconda3/bin/python -m pytest tests/test_calibration.py -k 'relative_epsilon or zero_target_weight' -q(4 passed) andruff check l0/calibration.py tests/test_calibration.pyNot run: docs guard tests, per explicit instruction in the implementation thread.
Follow-up
Replace the temporary git dependency with a released L0 package version after the L0 epsilon-insensitive loss branch is merged and published.